package com.itlong.cloud.POJO.VO.operate;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * <desc>
 *      获取商务收费信息VO
 * </desc>
 *
 * @createDate 2019/08/06
 */
@Data
@NoArgsConstructor
public class OperateBusinessChargeVO {

    private String id;

    private String projectId;       // 项目编号
    private String projectName;       // 项目名称
    private String feeNorm;       // 收费标准
    private Integer cycle;      // 收费周期，单位：年
    private String endTime;       // 过期时间
    private String endDay;       // 过期倒计时
    private String createTime;       // 创建时间
    private String operateUser;       // 操作人
    private String operateTime;       // 操作时间
    private String remark;       // 备注

    private String orderId;     // 账单id
    private String batchNumber;     // 批次号
    private String startTime;     // 起始时间
    private Integer businessAuditStatus;     // 商务审批状态，1未提交 2未审批 3已审批
    private String paidAmount;     // 应收金额
    private String feeStatus;       // 支付状态，1未支付 2已支付 0作废
    private Integer presented;       // 赠送服务费，0否 1是
    private String assignmentNumber;    // 任务书编号，多个英文逗号相连
    private String endStatus;           //过期状态 1未过期 2已过期
    private String businessRemark;      //商务备注

    private String uploadInfoPrivateName;    // 私密附件名称，多个按英文逗号相连，保持顺序，客户不可见
    private String uploadInfoPrivateUrl;    // 私密附件url，多个按英文逗号相连，保持顺序，客户不可见
    private String uploadInfoPublicName;    // 公共附件名称，多个按英文逗号相连，保持顺序，客户可见
    private String uploadInfoPublicUrl;    // 公共附件url，多个按英文逗号相连，保持顺序，客户可见
    private String prePaidAmount;    // 上期收费金额
    private String nextAmount;          //下期收费金额
    private List<OperateBusinessAssignmentDataVO> assignmentDetail;        // 任务书详情
    private List<OperateBusinessOrderDataVO> chargeDetail;        // 收费明细列表

    private Integer theLastOne;          // 是否是该批次号最后一条，0否 1是
    private Integer acceptStatus;          // 财务审核状态 1未提交 2未审核 3已审核，其中，已审核状态时不能弃审操作

    private String propertyName;            // 物业名称
    private String oldBatchNumber;     // 旧批次号
    private String cloudServiceAssignment; //云服务费任务书号
    private String confirmRemark;       //收款确认备注
    private String delayRemark;         //延期备注
    private Integer delayMark;          //延期标识 0未延期 1已延期
    private String deviceInfo;          //设备情况
    private String formNumber;          //表单编号
    private Integer autoCreatePresent;   //0手动创建 1自动创建


    /**
     * <desc>
     *      获取订单状态字符串
     * </desc>
     *
     * @Author Zhu.yj
     * @createDate  2020/11/27
     */
    public static String getFeeStatusString(String feeStatus){
        String feeStatusString;
        switch (feeStatus){
            case "0":
                feeStatusString = "作废";
                break;
            case "1":
                feeStatusString = "未支付";
                break;
            case "2":
                feeStatusString = "已支付";
                break;
                default:
                    feeStatusString = "";
                    break;
        }
        return feeStatusString;
    }

    /**
     * <desc>
     *      获取订单过期状态字符串
     * </desc>
     *
     * @Author Zhu.yj
     * @createDate  2020/11/27
     */
    public static String getEndStatusString(String endStatus){
        String endStatusString;
        switch (endStatus){
            case "1":
                endStatusString = "未过期";
                break;
            case "2":
                endStatusString= "已过期";
                break;
                default:
                    endStatusString = "";
                    break;
        }
        return endStatusString;
    }

}
